const jwt = require('jsonwebtoken')
const database = require('../db/index')
// 注册用户的处理函数
exports.regUser = (req, res) => {
    res.send('reguser OK')
}
// 用户登录的处理函数
exports.login = (req, res) => {
    // 配置了body-passer中间件就不能用postman测试
    const userInfo = req.body
    const sql = `select * from student where account_name=?`;
    database.query(sql, userInfo.username, function (err, results) {
        if (err) return res.json(err)
        if (results.length !== 1) return res.json({ status: 404, message: '用户不存在！' })
        const compareResult = userInfo.username === results[0].account_name && userInfo.password === results[0].password;
        if (!compareResult) {
            console.log('登录失败！')
            return res.json({ status: 2, message: '登录失败！' })
        }
        else {
            console.log('登录成功！')
            // console.log(results[0])
            // 生成Token  在生成 Token 字符串的时候，一定要剔除 密码 和 头像 的值
            const tokenStr = jwt.sign({
                    role: results[0].role,
                    id: results[0].id,
                }, 'kiorry',
                {expiresIn: '5h'});
            res.json({
                status: 200,
                message: '登录成功！',
                token: 'Bearer ' + tokenStr,
                userId: results[0].id,
            });
        }
    })
}
